const { WebSocketServer } = require('ws');
const WebSocket = require('ws');
const fs = require('fs');

// 搭建服务
const wss = new WebSocketServer({ port: 8090 });

const FileterArray = [
    '你好哈,请问有什么需要的',
    '再见，很高兴为你服务',
    '今天的北京天气是晴，温度在-5到5摄氏度之间,东南风3级',
    '普通感冒的话，可以吃点感冒药，多喝水，注意休息。如果严重的话，建议去医院检查一下。',
    '发烧的话，可以吃点退烧药或者退热贴，多喝水，来减缓病症，如果严重的话，建议去医院检查一下。',
];

const FilterKeepText = (text) => {
    // console.log(text);
    // console.log(text.includes('你好'));
    // for (let i = 0; i < FileterArray.length; i++) {
    //     if (text.includes(FileterArray[i])) {
    //         console.log(FileterArray[i]);
    //         return FileterArray[i];
    //     } else {
    //         return '抱歉,不知道你的问题，请重新提问';
    //     }
    // }
    // const resSear = FileterArray.filter((item) => {
    //     console.log(item.includes(text));
    //     if (text.includes(item)) {
    //         return item;
    //     } else {
    //         return '抱歉,不知道你的问题，请重新提问';
    //     }
    // });
    // console.log(resSear);
    if (text) {
        const findRes = FileterArray.find((item) => item.includes(text));
        if (findRes) {
            return findRes;
        }
    } else if (text.startsWith('https')) {
        return '我在的,请问您需要点开链接吗？我可以帮您点开链接哦';
    } else {
        return '很遗憾呀，我听不懂您在说什么，可以描述有哪些主体之类的，这样我就能更好地帮你啦';
    }
};

// 监听连接事件
if (wss) {
    console.log('websocket成功在端口上初始化' + 8090);
}

wss.onmessage = function (msg) {
    console.log('收到客户端的消息：' + msg);
};

wss.on('connection', function (ws) {
    // 接受前台发送过来的消息
    ws.on('message', (message) => {
        const data = JSON.parse(message);
        console.log(data);

        const text = data.content;
        // console.log(data.content);
        // console.log(text);

        const reply = FilterKeepText(text);
        console.log(reply); // 回复消息
        ws.send(JSON.stringify({ content: reply }));
    });
    ws.on('close', function () {
        console.log('客户端断开连接' + ws);
    });
});
